package studia.figlewicz.dao.ejb;

// Generated 2011-06-03 08:31:30 by Hibernate Tools 3.4.0.CR1

import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * Portfel generated by hbm2java
 */
@Entity
@Table(name = "PORTFEL", schema = "MARCIN")
public class Portfel implements java.io.Serializable {

	private String nazwa;
	private String opisportfela;
	private String funkcjaportfela;
	private String numerprocedury;
	private Date datadodania;
	private Date datautworzenia;
	private String login;
	private String opis;
	private Set<Wchodziwsklad> wchodziwsklads = new HashSet<Wchodziwsklad>(0);
	private Set<Wycenaportfela> wycenaportfelas = new HashSet<Wycenaportfela>(0);
	private Set<Planwyceny> planwycenies = new HashSet<Planwyceny>(0);

	public Portfel() {
	}

	public Portfel(String nazwa) {
		this.nazwa = nazwa;
	}

	public Portfel(String nazwa, String opisportfela, String funkcjaportfela,
			String numerprocedury, Date datadodania, Date datautworzenia,
			String login, String opis, Set<Wchodziwsklad> wchodziwsklads,
			Set<Wycenaportfela> wycenaportfelas, Set<Planwyceny> planwycenies) {
		this.nazwa = nazwa;
		this.opisportfela = opisportfela;
		this.funkcjaportfela = funkcjaportfela;
		this.numerprocedury = numerprocedury;
		this.datadodania = datadodania;
		this.datautworzenia = datautworzenia;
		this.login = login;
		this.opis = opis;
		this.wchodziwsklads = wchodziwsklads;
		this.wycenaportfelas = wycenaportfelas;
		this.planwycenies = planwycenies;
	}

	@Id
	@Column(name = "NAZWA", unique = true, nullable = false, length = 50)
	public String getNazwa() {
		return this.nazwa;
	}

	public void setNazwa(String nazwa) {
		this.nazwa = nazwa;
	}

	@Column(name = "OPISPORTFELA", length = 1000)
	public String getOpisportfela() {
		return this.opisportfela;
	}

	public void setOpisportfela(String opisportfela) {
		this.opisportfela = opisportfela;
	}

	@Column(name = "FUNKCJAPORTFELA", length = 100)
	public String getFunkcjaportfela() {
		return this.funkcjaportfela;
	}

	public void setFunkcjaportfela(String funkcjaportfela) {
		this.funkcjaportfela = funkcjaportfela;
	}

	@Column(name = "NUMERPROCEDURY", length = 30)
	public String getNumerprocedury() {
		return this.numerprocedury;
	}

	public void setNumerprocedury(String numerprocedury) {
		this.numerprocedury = numerprocedury;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "DATADODANIA", length = 7)
	public Date getDatadodania() {
		return this.datadodania;
	}

	public void setDatadodania(Date datadodania) {
		this.datadodania = datadodania;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "DATAUTWORZENIA", length = 7)
	public Date getDatautworzenia() {
		return this.datautworzenia;
	}

	public void setDatautworzenia(Date datautworzenia) {
		this.datautworzenia = datautworzenia;
	}

	@Column(name = "LOGIN", length = 30)
	public String getLogin() {
		return this.login;
	}

	public void setLogin(String login) {
		this.login = login;
	}

	@Column(name = "OPIS", length = 500)
	public String getOpis() {
		return this.opis;
	}

	public void setOpis(String opis) {
		this.opis = opis;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "portfel")
	public Set<Wchodziwsklad> getWchodziwsklads() {
		return this.wchodziwsklads;
	}

	public void setWchodziwsklads(Set<Wchodziwsklad> wchodziwsklads) {
		this.wchodziwsklads = wchodziwsklads;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "portfel")
	public Set<Wycenaportfela> getWycenaportfelas() {
		return this.wycenaportfelas;
	}

	public void setWycenaportfelas(Set<Wycenaportfela> wycenaportfelas) {
		this.wycenaportfelas = wycenaportfelas;
	}

	@ManyToMany(fetch = FetchType.LAZY)
	@JoinTable(name = "OKRESLASPOSOBWYCENY", schema = "MARCIN", joinColumns = { @JoinColumn(name = "NAZWAPORTFELA", nullable = false, updatable = false) }, inverseJoinColumns = { @JoinColumn(name = "NAZWAPLANUWYCENY", nullable = false, updatable = false) })
	public Set<Planwyceny> getPlanwycenies() {
		return this.planwycenies;
	}

	public void setPlanwycenies(Set<Planwyceny> planwycenies) {
		this.planwycenies = planwycenies;
	}

}
